package com.pancm.datacollector.forwarder;

import java.util.HashMap;

/**
 * 数据转发器接口
 * 所有具体协议的转发器都需要实现此接口
 */
public interface DataForwarder {
    /**
     * 转发数据
     * @param data 待转发的数据
     * @throws Exception 转发过程中的异常
     */
    void forward(HashMap<String, Object> data) throws Exception;

    /**
     * 获取转发器状态
     * @return 转发器状态
     */
    ForwarderStatus getStatus();

    /**
     * 获取转发器配置
     * @return 转发器配置
     */
    ForwarderConfig getConfig();

    /**
     * 更新转发器配置
     * @param config 新的配置信息
     * @throws Exception 配置更新过程中的异常
     */
    void updateConfig(ForwarderConfig config) throws Exception;
} 